600
I am using Layout property to sort multiple columns at once. The problem is that all items get expanded. How do I prevent that

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "P1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComPartialCheck of hoColumn to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "P2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComPartialCheck of hoColumn1 to True
			Set ComFormatColumn of hoColumn1 to "1 index ``"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child A" to Nothing
		Get ComInsertItem of hoItems h "Child B" to Nothing
		Get ComInsertItem of hoItems h "Child A" to Nothing
		Get ComInsertItem of hoItems h "Child B" to Nothing
		Get ComAddItem of hoItems "Root" to Nothing
		Get ComAddItem of hoItems "Root" to Nothing
	Send Destroy to hoItems
	Set ComSingleSort to False
	Set ComLayout to "multiplesort="C0:1 C1:2";collapse="""
	Send ComEndUpdate
End_Procedure
599
How can I get ride / hide the image being dragged by OLE Drag and Drop
// Occurs when the OLEDrag method is called.
Procedure OnComOLEStartDrag Variant   llData Integer   llAllowedEffects
	Forward Send OnComOLEStartDrag llData llAllowedEffects
	// Data.SetData("data to drag")
	Move 1 to AllowedEffects
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Set ComOLEDropMode to OLEexOLEDropManual
	Set ComBackground OLEexDragDropAfter to (RGB(255,255,255))
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
End_Procedure
598
How can I export checked items only

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "C1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "C2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 index `A-Z`"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "C3" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "100 index ``"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 2")) 0 to 1
		Set ComCellState of hoItems (ComAddItem(hoItems,"Item 3")) 0 to 1
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln "Export CSV Checked Items Only:"
	Showln (ComExport(Self,"","chk"))
End_Procedure
597
How can I export a hidden column

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "C2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 index `A-Z`"
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "C3" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "100 index ``"
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln "Export CSV Hidden Columns (1,2):"
	Showln (ComExport(Self,"","|1,2"))
End_Procedure
596
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 3)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComDrawGridLines to OLEexRowLines
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComHasLines to OLEexSolidLine
	Set ComIndent to 16
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
			Set ComFormatColumn of hoColumn to "((1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 + `` :  (=:0 mid (1 + 1 + =:1) )  + `)` ) + ` ` + value"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Variant hChild
		Get ComInsertItem of hoItems h "Child" to hChild
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
		Set ComExpandItem of hoItems 0 to True
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to hChild
		Set ComCellState of hoItems hChild 0 to 1
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
595
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComGridLineColor to (RGB(190,190,190))
	Set ComDrawGridLines to OLEexRowLines
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComHasLines to OLEexSolidLine
	Set ComIndent to 16
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
			Set ComDef of hoColumn OLEexCellPaddingRight to 4
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 36
			Set ComPosition of hoColumn to 0
			Set ComFormatColumn of hoColumn to "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : (`............` left 2 * (=:0 count `.`)) + (=:0 mid (1 + 1 + =:1) ) "
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Variant hChild
		Get ComInsertItem of hoItems h "Child" to hChild
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
		Set ComExpandItem of hoItems 0 to True
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to hChild
		Set ComCellState of hoItems hChild 0 to 1
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
594
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComDrawGridLines to OLEexRowLines
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComHasLines to OLEexSolidLine
	Set ComIndent to 16
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
			Set ComDef of hoColumn OLEexCellPaddingRight to 4
			Set ComAlignment of hoColumn to OLERightAlignment
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 24
			Set ComPosition of hoColumn to 0
			Set ComFormatColumn of hoColumn to "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : `<i>` + (=:0 mid (1 + 1 + =:1) ) "
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Variant hChild
		Get ComInsertItem of hoItems h "Child" to hChild
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
		Set ComExpandItem of hoItems 0 to True
		Get ComAddItem of hoItems "Root" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to hChild
		Set ComCellState of hoItems hChild 0 to 1
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems hChild "Child" to Nothing
		Get ComInsertItem of hoItems h "Child" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
593
Is it possible to have a different alignment for parts of the cell's caption

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComTreeColumnIndex to -1
	Set ComDrawGridLines to OLEexRowLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Default" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellHAlignment of hoItems (ComAddItem(hoItems,"all-left")) 0 to OLELeftAlignment
		Set ComCellHAlignment of hoItems (ComAddItem(hoItems,"all-center")) 0 to OLECenterAlignment
		Set ComCellHAlignment of hoItems (ComAddItem(hoItems,"all-right")) 0 to OLERightAlignment
		Variant h
		Get ComAddItem of hoItems "left<c>center<r>right" to h
		Set ComCellCaptionFormat of hoItems h 0 to OLEexHTML
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
592
I have a column with Def(exCellSingleLine) property on False, word-wrapping, and I am wondering if possible to update the column's content while user is resizing it
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "MultipleLine" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellSingleLine to False
			Set ComDef of hoColumn OLEexColumnResizeContiguously to True
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "SingleLine" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexCellSingleLine to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"This is a bit of long text that should break the line")) 1 to "This is a bit of long text that should break the line"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
591
How do I sort the index column as numeric

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellData of hoItems llItem 1 to (ComItemToIndex(hoItems,llItem))
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexAllLines
	Set ComColumnAutoResize to True
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Next" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellPaddingLeft to 4
			Set ComDef of hoColumn OLEexHeaderPaddingLeft to 4
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Index" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComWidth of hoColumn1 to 48
			Set ComFormatColumn of hoColumn1 to "(((0 := (1 index ``)) mod 3) case ( default: ``; 0 : `<r><fgcolor=B0B0B0>`; 1: ``; 2 : `<c><fgcolor=808080>` )) + str(=:0)"
			Set ComDef of hoColumn1 OLEexCellCaptionFormat to 1
			Set ComSortType of hoColumn1 to OLESortUserData
			Set ComPosition of hoColumn1 to 0
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 "Item 1" to Nothing
		Get ComAddItem of hoItems1 "Item 2" to Nothing
		Get ComAddItem of hoItems1 "Item 3" to Nothing
		Get ComAddItem of hoItems1 "Item 4" to Nothing
		Get ComAddItem of hoItems1 "Item 5" to Nothing
		Get ComAddItem of hoItems1 "Item 6" to Nothing
		Get ComAddItem of hoItems1 "Item 7" to Nothing
		Get ComAddItem of hoItems1 "Item 8" to Nothing
		Get ComAddItem of hoItems1 "Item 9" to Nothing
		Get ComAddItem of hoItems1 "Item 10" to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
590
How can I put icons/images into buttons

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "C+B" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 48
			Set ComFormatColumn of hoColumn to "` <img>` + ( 1 + (1 index ``) mod 3 ) + `</img> `"
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComDef of hoColumn OLEexCellHasButton to True
			Set ComDef of hoColumn OLEexCellButtonAutoWidth to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "" to Nothing
	Send Destroy to hoColumns1
	Set ComDrawGridLines to OLEexVLines
	Set ComDefaultItemHeight to 20
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
589
Is it possible to have a CheckBox and Button TOGETHER on all cells in a column

// Fired after the user clicks on the cell of button type. 
Procedure OnComCellButtonClick HITEM   llItem Integer   llColIndex
	Forward Send OnComCellButtonClick llItem llColIndex
	Showln  "CellButtonClick" llItem
End_Procedure

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Showln  "CellStateChanged" llItem
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 32
			Set ComFormatColumn of hoColumn to "1 index ``"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Def" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComAllowSizing of hoColumn1 to False
			Set ComWidth of hoColumn1 to 48
			Set ComFormatColumn of hoColumn1 to "`     `"
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Set ComDef of hoColumn1 OLEexCellHasButton to True
			Set ComDef of hoColumn1 OLEexCellButtonAutoWidth to True
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Get ComAdd of hoColumns2 "" to Nothing
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
		Get ComAddItem of hoItems "" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
588
Does filtering work with umlauts / accents characters
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Names" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexPattern
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Mantel" to Nothing
		Get ComAddItem of hoItems "Mechanik" to Nothing
		Get ComAddItem of hoItems "Motor" to Nothing
		Get ComAddItem of hoItems "Murks" to Nothing
		Get ComAddItem of hoItems "Märchen" to Nothing
		Get ComAddItem of hoItems "Möhren" to Nothing
		Get ComAddItem of hoItems "Mühle" to Nothing
		Get ComAddItem of hoItems "Sérigraphie" to Nothing
	Send Destroy to hoItems
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 0 to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFilter of hoColumn1 to "*ä*"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
587
The Items.FirstVisibleItem property is read-only. How can I change the first visible item

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Pos" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComPosition of hoColumn to 0
			Set ComFormatColumn of hoColumn to "0 index ``"
			Set ComWidth of hoColumn to 32
			Set ComDef of hoColumn OLEexCellBackColor to 15790320
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComScrollPos True to 13
	Send ComEndUpdate
End_Procedure
586
How FullPath method works

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "C2" to Nothing
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Set ComCellCaption of hoItems h 1 to "A"
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 1")) 1 to "B"
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 2")) 1 to "C"
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Set ComSearchColumnIndex to 1
	Variant v
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComFullPath of hoItems1 (ComItemByIndex(hoItems1,2)) to v
	Send Destroy to hoItems1
	Showln (ComSearchColumnIndex(Self)) v
	Set ComSearchColumnIndex to 0
	Variant v1
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Get ComFullPath of hoItems2 (ComItemByIndex(hoItems2,2)) to v1
	Send Destroy to hoItems2
	Showln (ComSearchColumnIndex(Self)) v1
	Send ComEndUpdate
End_Procedure
585
How can I filter for multiple captions on a single column, using OR clause

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Set ComContinueColumnScroll to False
	Set ComMarkSearchColumn to True
	Set ComSearchColumnIndex to 1
	Set ComFilterBarPromptVisible to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Name" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 96
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Title" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComWidth of hoColumn1 to 96
		Send Destroy to hoColumn1
		Get ComAdd of hoColumns "City" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h0
		Get ComAddItem of hoItems "Nancy Davolio" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Andrew Fuller" to h0
		Set ComCellCaption of hoItems h0 1 to "Vice President, Sales"
		Set ComCellCaption of hoItems h0 2 to "Tacoma"
		Set ComSelectItem of hoItems h0 to True
		Get ComAddItem of hoItems "Janet Leverling" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Kirkland"
		Get ComAddItem of hoItems "Margaret Peacock" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Redmond"
		Get ComAddItem of hoItems "Steven Buchanan" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Manager"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Michael Suyama" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Robert King" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Laura Callahan" to h0
		Set ComCellCaption of hoItems h0 1 to "Inside Sales Coordinator"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Anne Dodsworth" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
	Send Destroy to hoItems
	Set ComFilterBarPromptColumns to "1"
	Set ComFilterBarPromptPattern to "Vice Inside"
	Set ComFilterBarPromptType to OLEexFilterPromptContainsAny
	Send ComEndUpdate
End_Procedure
584
How can I filter for multiple captions on a single column, using AND clause

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Set ComContinueColumnScroll to False
	Set ComMarkSearchColumn to True
	Set ComSearchColumnIndex to 1
	Set ComFilterBarPromptVisible to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Name" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 96
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Title" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComWidth of hoColumn1 to 96
		Send Destroy to hoColumn1
		Get ComAdd of hoColumns "City" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h0
		Get ComAddItem of hoItems "Nancy Davolio" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Andrew Fuller" to h0
		Set ComCellCaption of hoItems h0 1 to "Vice President, Sales"
		Set ComCellCaption of hoItems h0 2 to "Tacoma"
		Set ComSelectItem of hoItems h0 to True
		Get ComAddItem of hoItems "Janet Leverling" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Kirkland"
		Get ComAddItem of hoItems "Margaret Peacock" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Redmond"
		Get ComAddItem of hoItems "Steven Buchanan" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Manager"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Michael Suyama" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Robert King" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Laura Callahan" to h0
		Set ComCellCaption of hoItems h0 1 to "Inside Sales Coordinator"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Anne Dodsworth" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
	Send Destroy to hoItems
	Set ComFilterBarPromptColumns to "1"
	Set ComFilterBarPromptPattern to "Vice Sales"
	Set ComFilterBarPromptType to OLEexFilterPromptContainsAll
	Send ComEndUpdate
End_Procedure
583
Can I set the search box / filterbarprompt to invisible, so I can use my own input and *string* via VBA
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to True
	Set ComContinueColumnScroll to False
	Set ComMarkSearchColumn to False
	Set ComSearchColumnIndex to 1
	Set ComFilterBarHeight to 0
	Set ComFilterBarPromptVisible to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Name" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComWidth of hoColumn to 96
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Title" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComWidth of hoColumn1 to 96
		Send Destroy to hoColumn1
		Get ComAdd of hoColumns "City" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h0
		Get ComAddItem of hoItems "Nancy Davolio" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Andrew Fuller" to h0
		Set ComCellCaption of hoItems h0 1 to "Vice President, Sales"
		Set ComCellCaption of hoItems h0 2 to "Tacoma"
		Set ComSelectItem of hoItems h0 to True
		Get ComAddItem of hoItems "Janet Leverling" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Kirkland"
		Get ComAddItem of hoItems "Margaret Peacock" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "Redmond"
		Get ComAddItem of hoItems "Steven Buchanan" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Manager"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Michael Suyama" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Robert King" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
		Get ComAddItem of hoItems "Laura Callahan" to h0
		Set ComCellCaption of hoItems h0 1 to "Inside Sales Coordinator"
		Set ComCellCaption of hoItems h0 2 to "Seattle"
		Get ComAddItem of hoItems "Anne Dodsworth" to h0
		Set ComCellCaption of hoItems h0 1 to "Sales Representative"
		Set ComCellCaption of hoItems h0 2 to "London"
	Send Destroy to hoItems
	Set ComFilterBarPromptPattern to "London"
	Send ComEndUpdate
End_Procedure
582
How to load a hierarchy using the control's DataSource property (Parent-ID-Relation)

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Send ComSetParent of hoItems llItem (ComFindItem(hoItems,(ComCellCaption(hoItems,llItem,"ReportsTo")),"EmployeeID",Nothing))
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "SELECT * FROM Employees ORDER BY ReportsTo" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComExpandItem of hoItems1 0 to True
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
581
Is there any option to control where I can drop the items when using the AutoDrag property
// Occurs when the user drags the item between InsertA and InsertB as child of NewParent.
Procedure OnComAllowAutoDrag HITEM   llItem HITEM   llNewParent HITEM   llInsertA HITEM   llInsertB Boolean   llCancel
	Forward Send OnComAllowAutoDrag llItem llNewParent llInsertA llInsertB llCancel
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Showln "NewParent" (ComCellCaption(hoItems,llNewParent,0))
		Showln "After" (ComCellCaption(hoItems,llInsertA,0))
		Showln "Before" (ComCellCaption(hoItems,llInsertB,0))
	Send Destroy to hoItems
	Move True to Cancel
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComLinesAtRoot to OLEexNoLinesAtRoot
	Set ComHasLines to OLEexThinLine
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Task" to Nothing
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant h
		Get ComAddItem of hoItems1 "Group 1" to h
		Set ComItemDivider of hoItems1 h to 0
		Set ComItemBold of hoItems1 h to True
		Variant h1
		Get ComInsertItem of hoItems1 h "Task 1" to h1
		Variant h2
		Get ComInsertItem of hoItems1 h "Task 2" to h2
		Variant h3
		Get ComInsertItem of hoItems1 h "Task 3" to h3
		Set ComExpandItem of hoItems1 h to True
		Get ComAddItem of hoItems1 "Group 2" to h
		Set ComItemBold of hoItems1 h to True
		Set ComItemDivider of hoItems1 h to 0
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
580
The FindPath is not case sensitive. How can I make it work case sensitive

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
	Send Destroy to hoColumns
	Set ComASCIIUpper to ""
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "L:" to h
		Get ComInsertItem of hoItems h "test" to Nothing
		Get ComInsertItem of hoItems h "Test" to Nothing
		Get ComInsertItem of hoItems h "TEST" to Nothing
		Set ComExpandItem of hoItems h to True
		Set ComItemBold of hoItems (ComFindPath(hoItems,"L:\TEST")) to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
579
How do I enable / display a tooltip while user selects new items from the drop down filter panel

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Items" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexEnableToolTip + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
		Get ComAddItem of hoItems "Item 4" to Nothing
	Send Destroy to hoItems
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 0 to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFilterType of hoColumn1 to (OLEexFilterExclude + OLEexFilter)
			Set ComFilter of hoColumn1 to "Item 1|Item 4"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
578
How can I align captions of items with checkbox, with items with no checkbox

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellImages of hoItems (ComAddItem(hoItems,0)) 0 to "1"
		Set ComCellHasCheckBox of hoItems (ComAddItem(hoItems,1)) 0 to True
		Set ComCellImages of hoItems (ComAddItem(hoItems,2)) 0 to "1"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
577
The control does not ensure the item to fit the control's client area once the user clicks the cell's button or check box. What can be done
// Occurs when the user presses a mouse button.
Procedure OnComMouseDown Short   llButton Short   llShift OLE_XPOS_PIXELS   llX OLE_YPOS_PIXELS   llY
	Forward Send OnComMouseDown llButton llShift llX llY
	// Items.EnsureVisibleItem(ItemFromPoint(-1,-1,c,hit))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComTreeColumnIndex to -1
	Set ComSelForeColor to (ComForeColor(Self))
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Buttons" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAlignment of hoColumn to OLECenterAlignment
			Set ComDef of hoColumn OLEexCellHasButton to True
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Button A" to Nothing
		Get ComAddItem of hoItems "Button B" to Nothing
		Get ComAddItem of hoItems "Button C" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
576
Does the title of the cell's tooltip supports HTML format

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComCaption of hoColumn to ""
			Set ComHTMLCaption of hoColumn to "Column"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellToolTip of hoItems (ComAddItem(hoItems,"tooltip w/h different title")) 0 to "<c><b><fgcolor=FF0000>Title</fgcolor></b><br>This is bit of text that's shown when the user hovers the cell. This shows the title centered with a different color."
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
575
How do I specify a different title for the cell's tooltip

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComCaption of hoColumn to "This is the title"
			Set ComHTMLCaption of hoColumn to "Column"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellToolTip of hoItems (ComAddItem(hoItems,"tooltip w/h different title")) 0 to "This is bit of text that's shown when the user hovers the cell."
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
574
The cell's tooltip displays the column's caption in its title. How can I get ride of that

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
		Get ComAdd of hoColumns "C2" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "tooltip w/h caption" to h
		Set ComCellToolTip of hoItems h 0 to "This is bit of text that's shown when the user hovers the cell. This shows the column's caption in the title."
		Set ComCellCaption of hoItems h 1 to "tooltip no caption"
		Set ComCellToolTip of hoItems h 1 to "This is bit of text that's shown when the user hovers the cell. This shows no column's caption in the title."
	Send Destroy to hoItems
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn
		Get ComItem of hoColumns1 "C2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to (ComCaption(hoColumn))
			Set ComCaption of hoColumn to ""
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Send ComEndUpdate
End_Procedure
573
How can I programmatically show the column's filter

// Fired when right mouse button is clicked
Procedure OnComRClick 
	Forward Send OnComRClick 
	Variant i
	Get ComItemFromPoint -1 -1 c hit to i
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns c to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Send ComShowFilter of hoColumn "-1,-1,128,128"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComShowFocusRect to False
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Items " to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterPattern of hoColumn1 to False
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
572
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 2)

// Fired after the user clicks on column's header.
Procedure OnComColumnClick Variant   llColumn
	Forward Send OnComColumnClick llColumn
	// Column.SortOrder = 1
	Set ComSortOnClick to OLEexDefaultSort
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns "Sort" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortOrder of hoColumn to OLESortAscending
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComSortOnClick to OLEexUserSort
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Set ComSortOnClick to OLEexUserSort
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Items" to Nothing
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn1
		Get ComAdd of hoColumns2 "Sort" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item 1 (3)")) 1 to 3
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item 2 (1)")) 1 to 1
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item 3 (2)")) 1 to 2
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
571
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 1)

// Fired after the user clicks on column's header.
Procedure OnComColumnClick Variant   llColumn
	Forward Send OnComColumnClick llColumn
	// Column.SortOrder = 1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Send ComSortChildren of hoItems 0 "Sort" True
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Set ComSortOnClick to OLEexUserSort
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn
		Get ComAdd of hoColumns1 "Sort" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellCaption of hoItems1 (ComAddItem(hoItems1,"Item 1 (3)")) 1 to 3
		Set ComCellCaption of hoItems1 (ComAddItem(hoItems1,"Item 2 (1)")) 1 to 1
		Set ComCellCaption of hoItems1 (ComAddItem(hoItems1,"Item 3 (2)")) 1 to 2
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
570
I have a 3 level hierarchy in the treeview, and I want to create a filter that only shows the items in the 2nd level of the hierarchy, is this possible

Procedure OnCreate
	Forward Send OnCreate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn
		Get ComAdd of hoColumns1 "Level" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Parent" to h
		Set ComCellCaption of hoItems h 1 to 0
		Variant hChild
		Get ComInsertItem of hoItems h "Child 1.1" to hChild
		Set ComCellCaption of hoItems hChild 1 to 1
		Variant hSubChild
		Get ComInsertItem of hoItems hChild "SubChild A" to hSubChild
		Set ComCellCaption of hoItems hSubChild 1 to 2
		Get ComInsertItem of hoItems h "Child 1.2" to hChild
		Set ComCellCaption of hoItems hChild 1 to 1
		Get ComInsertItem of hoItems hChild "SubChild B" to hSubChild
		Set ComCellCaption of hoItems hSubChild 1 to 2
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Set ComFilterInclude to OLEexMatchingItemsOnly
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn1
		Get ComItem of hoColumns2 "Level" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFilterType of hoColumn1 to OLEexFilter
			Set ComFilter of hoColumn1 to 2
		Send Destroy to hoColumn1
	Send Destroy to hoColumns2
	Send ComApplyFilter
End_Procedure
569
How can I sort by two-columns, one by date and one by time

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSingleSort to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Index" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 index ``"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Date" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComSortType of hoColumn1 to OLESortDate
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Time" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComSortType of hoColumn2 to OLESortTime
			Set ComFormatColumn of hoColumn2 to "time(value)"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "1/1/2001"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 10:00:00 AM"
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "12/31/2000"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 10:00:00 AM"
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "1/1/2001"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 6:00:00 AM"
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "12/31/2000"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 8:00:00 AM"
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "1/1/2001"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 8:00:00 AM"
		Get ComAddItem of hoItems 0 to h
		Set ComCellCaption of hoItems h 1 to "12/31/2000"
		Set ComCellCaption of hoItems h 2 to "1/1/2001 6:00:00 AM"
	Send Destroy to hoItems
	Set ComLayout to "multiplesort="C1:1 C2:1""
	Send ComEndUpdate
End_Procedure
568
We are using custom buttons for the +/- on the treeview control, is there a way to control the size of the image

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 3 "gBFLBCJwBAEHhEJAAChABDEMACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQIRg8JYlDTJcIjKKEVQHFiXIrAKKwEgmEQMQiCcbzXIUBxAAqVZZFUaKAi+Qg4TLBAzUSAAYhtHqeJBjID4JA6UJXRpIAIQSSBUjGOg6TiMUYZAguAxCEzZUT0fAYUQSCC3ZzDCKoRpiCT7Xg8V5OVbjUz9P7AMBwLA7erxap6PJeD54QymGp/R5eMhyLI8UxXFqRY6veKtJhGDIrT5CEIQVA9EyXJqnahqOiaCguPorQy/dYYdg2BYBPS6MAvG4bVrOd59XrgN42fY2ByzAqlMQwS7rOqiY6YWTnehWToHE+JZUmoLB5CufQuAkBYkGO+ZrDWAo7keZZyHmH5+i8X4bluaJyHgGB9mQHx3JjBpViqJRHmueZ7H8Xo3i2fYAl+d5tncMRfDcdZeDMDIjCCJwokoEoQiEJ4KCIfIdgUSZIAWaoGCEUh2BIJ4gnKBgMDICAnHoCggg0Aw4k0KAJkIagaguYwIj4LAmiKEw2CUIIiHMUJSDQSYyGCFYMGQCJCD0JRjiMRg3gmTYjGSVgmgkchSD4JJklIRIXCSSQYj4U4UgkQhGE+EwJEkJJWhGpgGGIOBNmMdhPg8SRiHCGAlibNhohqJpJi4T4ZA2WYIgEYInGOGJlDkCQyECDoTEkKQ+E+C5oCIVhQCUCQpnSDoeg4SZZH8YdhjibQ7AiUgkgcJFyiyEYmGmOhqhyJ5pmILoYCKaRSB6Eg7CcZgZggaRqHqNoTiuDpKkKMormsQ4xiUYgYiKEo6CCWgWiqPovloZoGjoKQYiQBCAg==" to Nothing
		Get ComAdd of hoAppearance 4 "gBFLBCJwBAEHhEJAAChABDcMACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQIRg8JYlDTJcIjKKEVQHFiXIrAKKwEgmEQMQiCcbzXIUBxAAqVZZFUaKAi+Qg4TLBAzUSAAYhtHqeJBjID4JA6UJXRpIAIQSSBUjGOg6TiMUYZAguAxCEzZUT0fAYUQSCC3ZzDCKoRpiCT7Xg8V5OVbjUz9P7AMBwLA7erxap6PJeD54QymGp/R5eMhyLI8UxXFqRY6veKtJhGDIrT5CEIQVA9EyXJqnahqOiaCguPorQy/dYYdg2BYBPS6MAvG4bVrOd59XrgN42fY2ByzAqlMQwS7rOqiY6YWTnehWToHE+JZUmoLB5CufQuAkBYkGO+ZrDWAo7keZZyHmPQ+g8X4fluYBhneEB9l0Iwpg6RRWiqFQfg+V5nnefh/GAB5yAIfRMFeRZdHeDJDCiSApkoMoEiQKBJmKCIfCcYQiHIFYFkmeBaBOA5JmgMIhgITICAmXoBkgIxAk4MxKAIcIaD+YpIjYLoLmMCI2CkJoiGMNgiCCIhDFCUg0EmMhghWDBkAkBg9CUY4jEYN4JA2IxklYJoJHIUg+CSZJSESFwkmUKRSFOFRlCIUIRhOZJCFISQ1iQdgEgGGJOBMeJdhOY5SFiHAmAkaYmG6GwmhmLhthsJJ5hSXYYkgFgKHgOYOFOEITCQCJpDSEoTmgQhUhOIRoHoGoCh+SJpnCZIeBedgaHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYYYgaFopiuaRakCbIsisSpGjYOwaFYIYKCkK5CA2IRqiwCwFiYaBrkKEYKEAQCAgA==" to Nothing
		Get ComAdd of hoAppearance 1 "CP:3 -4 -4 4 4" to Nothing
		Get ComAdd of hoAppearance 2 "CP:4 -4 -4 4 4" to Nothing
	Send Destroy to hoAppearance
	Set ComDefaultItemHeight to 22
	Set ComLinesAtRoot to OLEexGroupLinesAtRoot
	Set ComHasButtons to OLEexCustom
	Set ComHasButtonsCustom False to 16777216
	Set ComHasButtonsCustom True to 33554432
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
567
How can I connect to a DBF file
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Set ComMarkSearchColumn to False
	Variant rs
	Get Comcreateobject "ADODB.Recordset" to rs
		Send ComOpen "Select * From foxcode.DBF" "Provider=vfpoledb;Data Source=C:\Program Files\Microsoft Visual FoxPro 9\" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
End_Procedure
566
Do you have any Fit-To-Page options when printing the control

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Send ComEndUpdate
	Handle hoPrint
	Get Create (RefClass(cComPrint)) to hoPrint // Import the 'ExPrint 1.0 Control Library' library
		Set ComOptions of hoPrint to "FitToPage = On"
		Set ComPrintExt of hoPrint to (pvComObject(Self))
		Send ComPreview of hoPrint
	Send Destroy to hoPrint
End_Procedure
565
Does your control supports scrolling by touching the screen

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Set ComAutoDrag to (OLEexAutoDragScrollOnShortTouch + OLEexAutoDragScroll)
	Set ComScrollBySingleLine to True
	Set ComContinueColumnScroll to True
	Send ComEndUpdate
End_Procedure
564
How do I prevent showing the control's BackColorAlternate property on empty / non-items part of the control

Procedure OnCreate
	Forward Send OnCreate
	Set ComBackColorAlternate to |CI$7ff0f0f0
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
		Get ComAddItem of hoItems "Item 4" to Nothing
		Get ComAddItem of hoItems "Item 5" to Nothing
	Send Destroy to hoItems
End_Procedure
563
Is there a syntax for conditional formatting of items, based on CellState/CellStateChange

// Fired after cell's state has been changed.
Procedure OnComCellStateChanged HITEM   llItem Integer   llColIndex
	Forward Send OnComCellStateChanged llItem llColIndex
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems llItem 2 to (ComCellState(hoItems,llItem,0))
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComShowFocusRect to False
	Set ComMarkSearchColumn to False
	Set ComSelBackMode to OLEexTransparent
	Variant v
	Variant voConditionalFormats
	Get ComConditionalFormats to voConditionalFormats
	Handle hoConditionalFormats
	Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
	Set pvComObject of hoConditionalFormats to voConditionalFormats
		Get ComAdd of hoConditionalFormats "%2 != 0" Nothing to v
	Send Destroy to hoConditionalFormats
	Variant var_ConditionalFormat
	Move v to var_ConditionalFormat
		Set ComBold to True
		Set ComForeColor to (RGB(255,0,0))
		Set ComApplyTo to OLEexFormatToItems
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComWidth of hoColumn to 16
			Set ComAllowSizing of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Information" to Nothing
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn1
		Get ComAdd of hoColumns2 "Hidden" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns2
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellCaption of hoItems1 (ComAddItem(hoItems1,"")) 1 to "This is a bit of text associated"
		Variant h
		Get ComAddItem of hoItems1 "" to h
		Set ComCellCaption of hoItems1 h 1 to "This is a bit of text associated"
		Set ComCellState of hoItems1 h 0 to 1
		Set ComCellCaption of hoItems1 (ComAddItem(hoItems1,"")) 1 to "This is a bit of text associated"
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
562
How can I start editing the cell as soon as the user clicks a cell

// Occurs after data in the current cell is edited.
Procedure OnComAfterCellEdit HITEM   llItem Integer   llColIndex String   llNewCaption
	Forward Send OnComAfterCellEdit llItem llColIndex llNewCaption
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems llItem llColIndex to llNewCaption
	Send Destroy to hoItems
End_Procedure

// Occurs if the edit operation is canceled.
Procedure OnComCancelCellEdit HITEM   llItem Integer   llColIndex Variant   llReserved
	Forward Send OnComCancelCellEdit llItem llColIndex llReserved
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellCaption of hoItems1 llItem llColIndex to llReserved
	Send Destroy to hoItems1
End_Procedure

// Occurs when the user presses and then releases the left mouse button over the tree control.
Procedure OnComClick 
	Forward Send OnComClick 
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Send ComEdit of hoItems2 (ComFocusItem(hoItems2)) 0
	Send Destroy to hoItems2
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Set ComAllowEdit to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems3
	Get ComItems to voItems3
	Handle hoItems3
	Get Create (RefClass(cComItems)) to hoItems3
	Set pvComObject of hoItems3 to voItems3
		Get ComAddItem of hoItems3 "Item 1" to Nothing
	Send Destroy to hoItems3
	Variant voItems4
	Get ComItems to voItems4
	Handle hoItems4
	Get Create (RefClass(cComItems)) to hoItems4
	Set pvComObject of hoItems4 to voItems4
		Get ComAddItem of hoItems4 "Item 2" to Nothing
	Send Destroy to hoItems4
	Variant voItems5
	Get ComItems to voItems5
	Handle hoItems5
	Get Create (RefClass(cComItems)) to hoItems5
	Set pvComObject of hoItems5 to voItems5
		Get ComAddItem of hoItems5 "" to Nothing
	Send Destroy to hoItems5
End_Procedure
561
How do I programmatically exclude items from the filter

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Items" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox)
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
		Get ComAddItem of hoItems "Item 4" to Nothing
	Send Destroy to hoItems
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 0 to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFilterType of hoColumn1 to (OLEexFilterExclude + OLEexFilter)
			Set ComFilter of hoColumn1 to "Item 1|Item 4"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
560
How can I sort the columns to be displayed on the columns floating bar

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "City" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Start" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "End" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComVisible of hoColumn2 to False
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to True
	Set ComColumnsFloatBarSortOrder to OLESortAscending
End_Procedure
559
How can I add a vertical padding

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexAllLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Padding" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComDef of hoColumn OLEexCellSingleLine to False
			Set ComDef of hoColumn OLEexCellPaddingLeft to 6
			Set ComDef of hoColumn OLEexCellPaddingRight to 6
			Set ComDef of hoColumn OLEexCellPaddingTop to 6
			Set ComDef of hoColumn OLEexCellPaddingBottom to 6
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "padding" to Nothing
		Get ComAddItem of hoItems "padding" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
558
Is the PutItems method running .AddItem event

// Occurs after a new Item has been inserted to Items collection.
Procedure OnComAddItem HITEM   llItem
	Forward Send OnComAddItem llItem
	Variant v
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComCellCaption of hoItems llItem 0 to v
	Send Destroy to hoItems
	Showln "Adding ..." v
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Def" to Nothing
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant h
		Get ComAddItem of hoItems1 "Root" to h
		Get ComInsertItem of hoItems1 h "Child 1" to Nothing
		Get ComInsertItem of hoItems1 h "Child 2" to Nothing
	Send Destroy to hoItems1
	Showln "Call PutItems"
	Send ComPutItems (ComGetItems(Self,-1)) Nothing
End_Procedure
557
How do you embed HTML options into the anchor click string

// Occurs when an anchor element is clicked.
Procedure OnComAnchorClick String   llAnchorID String   llOptions
	Forward Send OnComAnchorClick llAnchorID llOptions
	Showln llAnchorID llOptions
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Car" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "<a mazda_1;options for 1>Mazda <b>1</b></a>" to Nothing
		Get ComAddItem of hoItems "<a mazda_2;options for 2>Mazda <b>2</b></a>" to Nothing
		Get ComAddItem of hoItems "<a mazda_3;options for 3a>Mazda <b>3.a</b></a>" to Nothing
		Get ComAddItem of hoItems "<a mazda_3;options for 3b>Mazda <b>3.b</b></a>" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
556
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 3)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAEGg4BVEIQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQCWIAzATGYBRfIUEgjBM6ExwG78egBHp/ZpkACIJJAaRjHQdJxGKKMQB9DIhCZpeKhWgkKIJBzOEyBRC4ERBGqNGrsIgLEqWZpnWhaNpWXYTLyBN64LhuK46g53O6wLxvK6hEr2dJ/YBcIAOfghf4NQ7EMRxLC8Mw3BDvYDkOAABAIgI=" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1fffffe
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"red")) to (RGB(255,0,0))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"blue")) to (RGB(0,0,255))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"green")) to (RGB(0,255,0))
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
555
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackMode to OLEexTransparent
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"red")) to (RGB(255,0,0))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"blue")) to (RGB(0,0,255))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"green")) to (RGB(0,255,0))
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
554
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComSelBackColor to (ComBackColor(Self))
	Set ComSelForeColor to (ComForeColor(Self))
	Set ComShowFocusRect to True
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"red")) to (RGB(255,0,0))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"blue")) to (RGB(0,0,255))
		Set ComItemBackColor of hoItems (ComAddItem(hoItems,"green")) to (RGB(0,255,0))
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
553
How do I arrange my columns on multiple levels

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComDrawGridLines to OLEexAllLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "C0" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComExpandColumns of hoColumn to "1,2"
			Set ComDisplayExpandButton of hoColumn to False
		Send Destroy to hoColumn
		Get ComAdd of hoColumns "C1" to Nothing
		Get ComAdd of hoColumns "C2" to Nothing
		Get ComAdd of hoColumns "C3" to Nothing
		Variant voColumn1
		Get ComAdd of hoColumns "C4" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComExpandColumns of hoColumn1 to "5,6"
			Set ComDisplayExpandButton of hoColumn1 to False
		Send Destroy to hoColumn1
		Get ComAdd of hoColumns "C5" to Nothing
		Variant voColumn2
		Get ComAdd of hoColumns "C6" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComExpandColumns of hoColumn2 to "6,7"
			Set ComDisplayExpandButton of hoColumn2 to False
		Send Destroy to hoColumn2
		Get ComAdd of hoColumns "C7" to Nothing
	Send Destroy to hoColumns
	Send ComEndUpdate
End_Procedure
552
Does your control support expandable header or columns, so I can arrange it on multiple levels

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexAllLines
	Set ComBackColorLevelHeader to (RGB(240,240,240))
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Photo" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 32
		Send Destroy to hoColumn
		Get ComAdd of hoColumns "Personal Info" to Nothing
		Get ComAdd of hoColumns "Title" to Nothing
		Get ComAdd of hoColumns "Name" to Nothing
		Get ComAdd of hoColumns "First" to Nothing
		Get ComAdd of hoColumns "Last" to Nothing
		Get ComAdd of hoColumns "Address" to Nothing
		Variant voColumn1
		Get ComItem of hoColumns "Personal Info" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComExpandColumns of hoColumn1 to "2,3"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComItem of hoColumns "Name" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComExpandColumns of hoColumn2 to "4,5"
			Set ComExpanded of hoColumn2 to False
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Send ComEndUpdate
End_Procedure
551
Does your control support subscript or superscript, in HTML captions

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Set ComHeaderHeight to 28
	Set ComDefaultItemHeight to 24
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Column 1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComHTMLCaption of hoColumn to "Column <b><off 2><font ;6>1"
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Column 2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComHTMLCaption of hoColumn1 to "Column <b><off 2><font ;6>2"
			Set ComDef of hoColumn1 OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Column 3" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComHTMLCaption of hoColumn2 to "Column <b><off 2><font ;6>3"
			Set ComDef of hoColumn2 OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Item <font ;6><off 4>1" to h
		Set ComCellCaption of hoItems h 1 to "Item <font ;6><off -6>2"
		Set ComCellCaption of hoItems h 2 to "Item <b><font ;6><off -6>2<off 4>3<off 4>1"
	Send Destroy to hoItems
End_Procedure
550
Is there any property I can save and restore automatically the current setting, column position, size, and so on (2)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Set ComLayout to "Select="0";SingleSort="C0:2";Columns=1"
	Send ComEndUpdate
End_Procedure
549
Is there any property I can save and restore automatically the current setting, column position, size, and so on (1)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Get ComAddItem of hoItems "Item 2" to Nothing
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Set ComLayout to "gBjAAwAAuABmABpABsAB0ABlAByhoAPIAOEPAA9gYABoABQAgUEg0XN4AOcJicKkpujMbjsfkMFk0YhkQgUOjUEl8gjcGO0ok8KMULjEaGMcj08kQAO8oMkTNEtGwAGQAqc7gUlhh1ABtAEsk9GpEfhElgVcsMupNlnlonlaAFcr0shUsp8QPEtnVJqJhmcIhUMh0QiU5sYAqMngUSuEMw07k8Qv0SgVRrNEuVflF2jF5x9JyNEm0TjQijemyE0jE3t+YruauoAu4Az1qj9BzRn0UzksSnAA0xDjY6qnAw8OiUQ0dwzN0zWz2t7j8/xURAGNvWH6k8xlEhklhEI0O/6QAgI="
	Send ComEndUpdate
End_Procedure
548
I have noticed that the column's header is changed once the cursor hovers it. Is it possible to change that visual appearance

Procedure OnCreate
	Forward Send OnCreate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Get ComAdd of hoColumns "Column 2" to Nothing
	Send Destroy to hoColumns
	Set ComBackColorHeader to |CI$1000000
	Set ComBackground OLEexCursorHoverColumn to |CI$12d86ff
End_Procedure
547
Is it possible to change the visual appearance of the columns selector/floating bar(3)

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 2 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Variant voAppearance1
	Get ComVisualAppearance to voAppearance1
	Handle hoAppearance1
	Get Create (RefClass(cComAppearance)) to hoAppearance1
	Set pvComObject of hoAppearance1 to voAppearance1
		Get ComAdd of hoAppearance1 3 "c:\exontrol\images\pushed.ebn" to Nothing
	Send Destroy to hoAppearance1
	Set ComBackground OLEexColumnsFloatAppearance to |CI$2000000
	Set ComBackground OLEexColumnsFloatBackColor to |CI$3000000
	Set ComBackground OLEexColumnsFloatCaptionBackColor to (RGB(246,245,240))
	Set ComColumnsFloatBarVisible to True
End_Procedure
546
Is it possible to change the visual appearance of the columns selector/floating bar(2)

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 3 "c:\exontrol\images\pushed.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsFloatBackColor to |CI$3000000
	Set ComColumnsFloatBarVisible to True
End_Procedure
545
Is it possible to change the visual appearance of the columns selector/floating bar(1)

Procedure OnCreate
	Forward Send OnCreate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 2 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsFloatAppearance to |CI$2000000
	Set ComBackground OLEexColumnsFloatBackColor to (RGB(246,245,240))
	Set ComBackground OLEexColumnsFloatCaptionBackColor to (RGB(246,245,240))
	Set ComColumnsFloatBarVisible to True
End_Procedure
544
I am using the ColumnsFloatBarVisible property on True, but still not able to add any column on that list

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to True
End_Procedure
543
Is it possible to list a column to columns selector/floating bar, but still user can use it

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Column 3" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
			Set ComEnabled of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to True
End_Procedure
542
How can I prevent a specific column not to be listed in the columns selector/floating bar

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Column 3" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComVisible of hoColumn1 to False
			Set ComAllowDragging of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to True
End_Procedure
541
Is it possible to change the "Columns" caption being shown in the columns selector/floating bar

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComDescription OLEexColumnsFloatBar to "Hidden Columns"
	Set ComColumnsFloatBarVisible to True
End_Procedure
540
How can I show the columns selector, so the user can drag and drop columns to the view

Procedure OnCreate
	Forward Send OnCreate
	Set ComColumnAutoResize to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Column 2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComVisible of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Set ComColumnsFloatBarVisible to True
End_Procedure
539
The column's header is changed while the cursor hovers it. Is it possible to prevent that

Procedure OnCreate
	Forward Send OnCreate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Column 1" to Nothing
		Get ComAdd of hoColumns "Column 2" to Nothing
	Send Destroy to hoColumns
	Set ComBackground OLEexCursorHoverColumn to -1
End_Procedure
538
Is there any public method to export the selected data

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "C2" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 index `A-Z`"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "C3" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "100 index ``"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Item 1" to Nothing
		Set ComSelectItem of hoItems (ComAddItem(hoItems,"Item 2")) to True
		Get ComAddItem of hoItems "Item 3" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
	Showln "Export CSV Selected Items Only:"
	Showln (ComExport(Self,"","sel"))
End_Procedure
537
Is it possible to auto-numbering the children items but still keeps the position after filtering

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Items" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexFilter
			Set ComFilter of hoColumn to "Child 2"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Pos.1" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 ropos ''"
			Set ComPosition of hoColumn1 to 0
			Set ComWidth of hoColumn1 to 32
			Set ComAllowSizing of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "Pos.2" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "1 ropos ':'"
			Set ComPosition of hoColumn2 to 1
			Set ComWidth of hoColumn2 to 32
			Set ComAllowSizing of hoColumn2 to False
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComAdd of hoColumns3 "Pos.3" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "1 ropos ':|A-Z'"
			Set ComPosition of hoColumn3 to 2
			Set ComWidth of hoColumn3 to 32
			Set ComAllowSizing of hoColumn3 to False
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComAdd of hoColumns4 "Pos.4" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFormatColumn of hoColumn4 to "1 ropos '|A-Z|'"
			Set ComPosition of hoColumn4 to 3
			Set ComWidth of hoColumn4 to 32
			Set ComAllowSizing of hoColumn4 to False
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComAdd of hoColumns5 "Pos.5" to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFormatColumn of hoColumn5 to "'<font Tahoma;7>' + 1 ropos '-<b>||A-Z'"
			Set ComDef of hoColumn5 OLEexCellCaptionFormat to 1
			Set ComPosition of hoColumn5 to 4
			Set ComWidth of hoColumn5 to 32
			Set ComAllowSizing of hoColumn5 to False
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComAdd of hoColumns6 "Pos.6" to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComFormatColumn of hoColumn6 to "'<b>'+ 1 ropos '</b>:<fgcolor=FF0000>|A-Z|'"
			Set ComDef of hoColumn6 OLEexCellCaptionFormat to 1
			Set ComPosition of hoColumn6 to 5
			Set ComWidth of hoColumn6 to 48
			Set ComAllowSizing of hoColumn6 to False
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
536
Is it possible to auto-numbering the children items too

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn
		Get ComAdd of hoColumns1 "Pos.1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "1 rpos ''"
			Set ComPosition of hoColumn to 0
			Set ComWidth of hoColumn to 32
			Set ComAllowSizing of hoColumn to False
		Send Destroy to hoColumn
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn1
		Get ComAdd of hoColumns2 "Pos.2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "1 rpos ':'"
			Set ComPosition of hoColumn1 to 1
			Set ComWidth of hoColumn1 to 32
			Set ComAllowSizing of hoColumn1 to False
		Send Destroy to hoColumn1
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn2
		Get ComAdd of hoColumns3 "Pos.3" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComFormatColumn of hoColumn2 to "1 rpos ':|A-Z'"
			Set ComPosition of hoColumn2 to 2
			Set ComWidth of hoColumn2 to 32
			Set ComAllowSizing of hoColumn2 to False
		Send Destroy to hoColumn2
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn3
		Get ComAdd of hoColumns4 "Pos.4" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComFormatColumn of hoColumn3 to "1 rpos '|A-Z|'"
			Set ComPosition of hoColumn3 to 3
			Set ComWidth of hoColumn3 to 32
			Set ComAllowSizing of hoColumn3 to False
		Send Destroy to hoColumn3
	Send Destroy to hoColumns4
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn4
		Get ComAdd of hoColumns5 "Pos.5" to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComFormatColumn of hoColumn4 to "'<font Tahoma;7>' + 1 rpos '-<b>||A-Z'"
			Set ComDef of hoColumn4 OLEexCellCaptionFormat to 1
			Set ComPosition of hoColumn4 to 4
			Set ComWidth of hoColumn4 to 32
			Set ComAllowSizing of hoColumn4 to False
		Send Destroy to hoColumn4
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn5
		Get ComAdd of hoColumns6 "Pos.6" to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComFormatColumn of hoColumn5 to "'<b>'+ 1 rpos '</b>:<fgcolor=FF0000>|A-Z|'"
			Set ComDef of hoColumn5 OLEexCellCaptionFormat to 1
			Set ComPosition of hoColumn5 to 5
			Set ComWidth of hoColumn5 to 48
			Set ComAllowSizing of hoColumn5 to False
		Send Destroy to hoColumn5
	Send Destroy to hoColumns6
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
535
How can I find if there is any filter applied to the control

// Notifies your application that the filter is changed.
Procedure OnComFilterChange 
	Forward Send OnComFilterChange 
	Variant v
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComVisibleItemCount of hoItems to v
	Send Destroy to hoItems
	Showln "If negative, the filter is present, else not" v
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComTreeColumnIndex to -1
	Set ComFilterInclude to OLEexMatchingItemsOnly
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexFilter
			Set ComFilter of hoColumn to "C1"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Variant h
		Get ComAddItem of hoItems1 "R1" to h
		Get ComInsertItem of hoItems1 h "C1" to Nothing
		Get ComInsertItem of hoItems1 h "C2" to Nothing
		Set ComExpandItem of hoItems1 h to True
		Get ComAddItem of hoItems1 "R2" to h
		Get ComInsertItem of hoItems1 h "C1" to Nothing
		Get ComInsertItem of hoItems1 h "C2" to Nothing
	Send Destroy to hoItems1
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
534
How can I prevent showing the lines for the hierarchy while using the exMatchingItemsOnly option

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComTreeColumnIndex to -1
	Set ComFilterInclude to OLEexMatchingItemsOnly
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexFilter
			Set ComFilter of hoColumn to "C1|C2"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "R1" to h
		Get ComInsertItem of hoItems h "C1" to Nothing
		Get ComInsertItem of hoItems h "C2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "R2" to h
		Get ComInsertItem of hoItems h "C1" to Nothing
		Get ComInsertItem of hoItems h "C2" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
533
Is there any method to get only the matched items and not the items with his parent

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Set ComFilterInclude to OLEexMatchingItemsOnly
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Column" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexFilter
			Set ComFilter of hoColumn to "C1|C2"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "R1" to h
		Get ComInsertItem of hoItems h "C1" to Nothing
		Get ComInsertItem of hoItems h "C2" to Nothing
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "R2" to h
		Get ComInsertItem of hoItems h "C1" to Nothing
		Get ComInsertItem of hoItems h "C2" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
532
How can I add or change the padding (spaces) for captions in the control's header

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Padding-Left" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexHeaderPaddingLeft to 18
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Padding-Right" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexHeaderPaddingRight to 18
			Set ComHeaderAlignment of hoColumn1 to OLERightAlignment
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Send ComEndUpdate
End_Procedure
531
Do you have any plans to add cell spacing and cell padding to the cells

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComDrawGridLines to OLEexRowLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Padding-Left" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Set ComDef of hoColumn OLEexCellPaddingLeft to 18
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "No-Padding" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComAdd of hoColumns2 "Empty" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComPosition of hoColumn2 to 0
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item A.1")) 1 to "Item A.2"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item B.1")) 1 to "Item B.2"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Item C.1")) 1 to "Item C.2"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
530
Is it possible display numbers in the same format no matter of regional settings in the control panel

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default positive)'"
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '2|.|3|,|1|1')"
		Get ComAddItem of hoItems -100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default negative)'"
		Get ComAddItem of hoItems -100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '2|.|3|,|1|1')"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
529
Is it possible to add a 0 for numbers less than 1 instead .7 to show 0.8

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 0.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems 0.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '|||||0') +  ' <fgcolor=808080>(Display no leading zeros)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
528
How can I specify the format for negative numbers

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems -100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems -100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '||||1') +  ' <fgcolor=808080>(Negative sign, number; for example, -1.1)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
527
Is it possible to change the grouping character when display numbers

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '|||-') +  ' <fgcolor=808080>(grouping character is -)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
526
How can I display numbers with 2 digits in each group

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems 100000.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '||2') +  ' <fgcolor=808080>(grouping by 2 digits)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
525
How can I display my numbers using a different decimal separator

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '|;') +  ' <fgcolor=808080>(decimal separator is <b>;</b>)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
524
Is it possible to display the numbers using 3 (three) digits

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Def" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '') +  ' <fgcolor=808080>(default)'"
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format '3') +  ' <fgcolor=808080>(3 digits)'"
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format 2) +  '  <fgcolor=808080>(2 digits)'"
		Get ComAddItem of hoItems 100.27 to h
		Set ComFormatCell of hoItems h 0 to "(value format 1) +  ' <fgcolor=808080>(1 digit)'"
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
523
Is it possible to format numbers

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Name" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "A" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortType of hoColumn to OLESortNumeric
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 36
			Set ComFormatColumn of hoColumn to "len(value) ? value + ' +'"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "B" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComSortType of hoColumn1 to OLESortNumeric
			Set ComAllowSizing of hoColumn1 to False
			Set ComWidth of hoColumn1 to 36
			Set ComFormatColumn of hoColumn1 to "len(value) ? value + ' +'"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "C" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComSortType of hoColumn2 to OLESortNumeric
			Set ComAllowSizing of hoColumn2 to False
			Set ComWidth of hoColumn2 to 36
			Set ComFormatColumn of hoColumn2 to "len(value) ? value + ' ='"
		Send Destroy to hoColumn2
		Variant voColumn3
		Get ComAdd of hoColumns "A+B+C" to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComSortType of hoColumn3 to OLESortNumeric
			Set ComWidth of hoColumn3 to 64
			Set ComComputedField of hoColumn3 to "dbl(%1)+dbl(%2)+dbl(%3)"
			Set ComFormatColumn of hoColumn3 to "type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=0000FF>+'+(value format '2|.|3|,' ): '0.00') )"
			Set ComDef of hoColumn3 OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn3
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root" to h
		Set ComCellCaptionFormat of hoItems h 4 to OLEexComputedField
		Variant h1
		Get ComInsertItem of hoItems h "Child 1" to h1
		Set ComCellCaption of hoItems h1 1 to 7
		Set ComCellCaption of hoItems h1 2 to 3
		Set ComCellCaption of hoItems h1 3 to 1
		Get ComInsertItem of hoItems h "Child 2" to h1
		Set ComCellCaption of hoItems h1 1 to -2
		Set ComCellCaption of hoItems h1 2 to -2
		Set ComCellCaption of hoItems h1 3 to -4
		Get ComInsertItem of hoItems h "Child 3" to h1
		Set ComCellCaption of hoItems h1 1 to 2
		Set ComCellCaption of hoItems h1 2 to 2
		Set ComCellCaption of hoItems h1 3 to -4
		Set ComExpandItem of hoItems h to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
522
I am using the FormatColumn/FormatCell to format my columns. Is it possible to ignore the SelForeColor, so the foreground color for selected items does not override my settings

// Fired after a new item has been selected.
Procedure OnComSelectionChanged 
	Forward Send OnComSelectionChanged 
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Send ComClearItemBackColor of hoItems 0
		Set ComItemBackColor of hoItems (ComSelectedItem(hoItems,0)) to (RGB(128,255,255))
	Send Destroy to hoItems
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Set ComSelForeColor to (ComForeColor(Self))
	Set ComSelBackColor to (ComBackColor(Self))
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Format" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComFormatColumn of hoColumn to "type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=0000FF>+'+(value format '2|.|3|,' ): '0.00') )"
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Get ComAddItem of hoItems1 10 to Nothing
		Get ComAddItem of hoItems1 -8 to Nothing
	Send Destroy to hoItems1
	Send ComEndUpdate
End_Procedure
521
Is it possible to change the height for all items at once

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Items" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Get ComAddItem of hoItems "Root 2" to h
		Get ComInsertItem of hoItems h "Child 1" to Nothing
		Get ComInsertItem of hoItems h "Child 2" to Nothing
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
	Set ComDefaultItemHeight to 12
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComItemHeight of hoItems1 0 to 12
	Send Destroy to hoItems1
End_Procedure
520
How can I add a footer row

Procedure OnCreate
	Forward Send OnCreate
	Set ComShowLockedItems to True
	Set ComDrawGridLines to OLEexVLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "C2" to Nothing
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLEBottomAlignment to 1
		Variant h
		Get ComLockedItem of hoItems OLEBottomAlignment 0 to h
		Set ComItemBackColor of hoItems h to (RGB(128,128,128))
		Set ComItemForeColor of hoItems h to (RGB(255,255,255))
		Set ComCellCaption of hoItems h 0 to "footer c1"
		Set ComCellCaption of hoItems h 1 to "footer c2"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"cell")) 1 to "cell"
	Send Destroy to hoItems
End_Procedure
519
How can I add a header row

Procedure OnCreate
	Forward Send OnCreate
	Set ComShowLockedItems to True
	Set ComDrawGridLines to OLEexVLines
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "C1" to Nothing
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "C2" to Nothing
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComLockedItemCount of hoItems OLETopAlignment to 1
		Variant h
		Get ComLockedItem of hoItems OLETopAlignment 0 to h
		Set ComItemBackColor of hoItems h to (RGB(128,128,128))
		Set ComItemForeColor of hoItems h to (RGB(255,255,255))
		Set ComCellCaption of hoItems h 0 to "footer c1"
		Set ComCellCaption of hoItems h 1 to "footer c2"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"cell")) 1 to "cell"
	Send Destroy to hoItems
End_Procedure
518
When I'm trying to show string with "line break" character (vbCrLF) in a textbox, it shows 2 squares. Is there any way to hide these squares

Procedure OnCreate
	Forward Send OnCreate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Value" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "CellSingleLine = False" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComComputedField of hoColumn to "%0"
			Set ComDef of hoColumn OLEexCellSingleLine to False
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "FormatColumn/replace CRLF" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComComputedField of hoColumn1 to "%0"
			Set ComFormatColumn of hoColumn1 to "value replace `\r\n` with ``"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "FormatColumn/replace TAB,CRLF" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%0"
			Set ComFormatColumn of hoColumn2 to "(value replace `\t` with ``) replace `\r\n` with ``"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "a\ta\r\nb\tb" to Nothing
	Send Destroy to hoItems
End_Procedure
517
Is there any way to "unselect" radio group

// Occurs when the user dblclk the left mouse button over an object.
Procedure OnComDblClick Short   llShift OLE_XPOS_PIXELS   llX OLE_YPOS_PIXELS   llY
	Forward Send OnComDblClick llShift llX llY
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComCellChecked of hoItems 1234 to h
		Set ComCellHasCheckBox of hoItems 0 h to True
		Set ComCellState of hoItems 0 h to 0
		Set ComCellHasCheckBox of hoItems 0 h to False
	Send Destroy to hoItems
End_Procedure

// Fired after a new item has been selected.
Procedure OnComSelectionChanged 
	Forward Send OnComSelectionChanged 
	Variant voItems1
	Get ComItems to voItems1
	Handle hoItems1
	Get Create (RefClass(cComItems)) to hoItems1
	Set pvComObject of hoItems1 to voItems1
		Set ComCellState of hoItems1 (ComFocusItem(hoItems1)) 0 to 1
	Send Destroy to hoItems1
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Set ComMarkSearchColumn to False
	Set ComSelBackColor to (RGB(255,255,128))
	Set ComSelForeColor to (RGB(0,0,0))
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
	Send Destroy to hoColumns
	Variant voItems2
	Get ComItems to voItems2
	Handle hoItems2
	Get Create (RefClass(cComItems)) to hoItems2
	Set pvComObject of hoItems2 to voItems2
		Get ComAddItem of hoItems2 "Radio 1" to h
		Set ComCellHasRadioButton of hoItems2 h 0 to True
		Set ComCellRadioGroup of hoItems2 h 0 to 1234
		Get ComAddItem of hoItems2 "Radio 2" to h
		Set ComCellHasRadioButton of hoItems2 h 0 to True
		Set ComCellRadioGroup of hoItems2 h 0 to 1234
		Set ComCellState of hoItems2 h 0 to 1
		Get ComAddItem of hoItems2 "Radio 3" to h
		Set ComCellHasRadioButton of hoItems2 h 0 to True
		Set ComCellRadioGroup of hoItems2 h 0 to 1234
	Send Destroy to hoItems2
End_Procedure
516
The Column.Alignment property does not seem to work for cells with images in them. What can be done

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Set ComTreeColumnIndex to -1
	Set ComDrawGridLines to OLEexAllLines
	Set ComHeaderHeight to 24
	Set ComMarkSearchColumn to False
	Set ComDefaultItemHeight to 24
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Image" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComAllowSizing of hoColumn to False
			Set ComWidth of hoColumn to 32
			Set ComHTMLCaption of hoColumn to "<img>1</img>"
			Set ComHeaderAlignment of hoColumn to OLECenterAlignment
			Set ComAlignment of hoColumn to OLECenterAlignment
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Get ComAdd of hoColumns1 "Rest" to Nothing
	Send Destroy to hoColumns1
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "<img>1</img>" to Nothing
		Get ComAddItem of hoItems "<img>2</img>" to Nothing
		Get ComAddItem of hoItems "<img>3</img>" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
515
Can I change the format of date to be shown in the control

Procedure OnCreate
	Forward Send OnCreate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Default" to Nothing
		Variant voColumn
		Get ComAdd of hoColumns "Format.1" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComComputedField of hoColumn to "%0"
			Set ComFormatColumn of hoColumn to "dateF(value) replace `/` with `-`"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Format.2" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComComputedField of hoColumn1 to "%0"
			Set ComDef of hoColumn1 OLEexCellCaptionFormat to 1
			Set ComFormatColumn of hoColumn1 to "`<b>`+ shortdate(value) + `</b> ` + timeF(value)"
		Send Destroy to hoColumn1
		Variant voColumn2
		Get ComAdd of hoColumns "Format.3" to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComComputedField of hoColumn2 to "%0"
			Set ComDef of hoColumn2 OLEexCellCaptionFormat to 1
			Set ComFormatColumn of hoColumn2 to "( dateF(value) replace `/` with `-` ) + ` <b>`+ ( weekday(value) case ( 0 : `Su`; 1 : `Mo`; 2 : `Tu`; 3 : `We`; 4 : `Th`; 5 : `Fr`; 6 : `Sa`) )"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "1/1/2001 10:00:00 AM" to Nothing
		Get ComAddItem of hoItems "1/2/2001 10:00:00 AM" to Nothing
	Send Destroy to hoItems
End_Procedure
514
Is it possible to scroll the control's content by clicking and dragging

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Set ComAutoDrag to OLEexAutoDragScroll
	Send ComEndUpdate
End_Procedure
513
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a snapshot
Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComHTMLPicture "p1" to "c:\exontrol\images\card.png"
	Set ComHTMLPicture "p2" to "c:\exontrol\images\sun.png"
	Set ComAutoDrag to OLEexAutoDragCopySnapShot
	Set ComLinesAtRoot to OLEexNoLinesAtRoot
	Set ComHasLines to OLEexThinLine
	Set ComShowFocusRect to False
	Set ComDefaultItemHeight to 26
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Task" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "<img>p1:32</img>Group 1" to h
		Set ComCellCaptionFormat of hoItems h 0 to OLEexHTML
		Set ComItemDivider of hoItems h to 0
		Set ComItemBold of hoItems h to True
		Variant h1
		Get ComInsertItem of hoItems h "Task 1" to h1
		Variant h2
		Get ComInsertItem of hoItems h "Task 2" to h2
		Variant h3
		Get ComInsertItem of hoItems h "Task 3" to h3
		Get ComAddItem of hoItems "<img>p2:32</img>Group 2" to h
		Set ComCellCaptionFormat of hoItems h 0 to OLEexHTML
		Set ComItemBold of hoItems h to True
		Set ComItemDivider of hoItems h to 0
		Get ComInsertItem of hoItems h "Task" to h1
		Set ComExpandItem of hoItems 0 to True
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
512
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a image

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComHTMLPicture "p1" to "c:\exontrol\images\card.png"
	Set ComHTMLPicture "p2" to "c:\exontrol\images\sun.png"
	Variant var_HTMLPicture
	Get ComHTMLPicture "aka1" to var_HTMLPicture
	Set ComHeaderHeight to 24
	Set ComDefaultItemHeight to 48
	Set ComDrawGridLines to OLEexRowLines
	Set ComGridLineColor to (RGB(240,240,240))
	Set ComSelBackMode to OLEexTransparent
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns 0 to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDef of hoColumn OLEexCellCaptionFormat to 1
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 0 to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComFormatColumn of hoColumn1 to "value + ` <img>p` + (1 + (value mod 3 ) ) + `</img>`"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 0 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComWidth of hoColumn2 to 112
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Variant voColumns3
	Get ComColumns to voColumns3
	Handle hoColumns3
	Get Create (RefClass(cComColumns)) to hoColumns3
	Set pvComObject of hoColumns3 to voColumns3
		Variant voColumn3
		Get ComItem of hoColumns3 1 to voColumn3
		Handle hoColumn3
		Get Create (RefClass(cComColumn)) to hoColumn3
		Set pvComObject of hoColumn3 to voColumn3
			Set ComDef of hoColumn3 OLEexCellHasCheckBox to 1
		Send Destroy to hoColumn3
	Send Destroy to hoColumns3
	Variant voColumns4
	Get ComColumns to voColumns4
	Handle hoColumns4
	Get Create (RefClass(cComColumns)) to hoColumns4
	Set pvComObject of hoColumns4 to voColumns4
		Variant voColumn4
		Get ComItem of hoColumns4 2 to voColumn4
		Handle hoColumn4
		Get Create (RefClass(cComColumn)) to hoColumn4
		Set pvComObject of hoColumn4 to voColumn4
			Set ComLevelKey of hoColumn4 to "1"
		Send Destroy to hoColumn4
	Send Destroy to hoColumns4
	Variant voColumns5
	Get ComColumns to voColumns5
	Handle hoColumns5
	Get Create (RefClass(cComColumns)) to hoColumns5
	Set pvComObject of hoColumns5 to voColumns5
		Variant voColumn5
		Get ComItem of hoColumns5 3 to voColumn5
		Handle hoColumn5
		Get Create (RefClass(cComColumn)) to hoColumn5
		Set pvComObject of hoColumn5 to voColumn5
			Set ComLevelKey of hoColumn5 to "1"
		Send Destroy to hoColumn5
	Send Destroy to hoColumns5
	Variant voColumns6
	Get ComColumns to voColumns6
	Handle hoColumns6
	Get Create (RefClass(cComColumns)) to hoColumns6
	Set pvComObject of hoColumns6 to voColumns6
		Variant voColumn6
		Get ComItem of hoColumns6 4 to voColumn6
		Handle hoColumn6
		Get Create (RefClass(cComColumn)) to hoColumn6
		Set pvComObject of hoColumn6 to voColumn6
			Set ComLevelKey of hoColumn6 to "1"
		Send Destroy to hoColumn6
	Send Destroy to hoColumns6
	Set ComAutoDrag to OLEexAutoDragCopyImage
	Set ComSingleSel to False
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComItemByIndex of hoItems 1 to h
		Set ComSelectItem of hoItems h to True
		Get ComItemByIndex of hoItems 2 to h
		Set ComSelectItem of hoItems h to True
		Get ComItemByIndex of hoItems 3 to h
		Set ComSelectItem of hoItems h to True
		Set ComLockedItemCount of hoItems OLEBottomAlignment to 1
		Get ComLockedItem of hoItems OLEBottomAlignment 0 to h
		Set ComCellCaption of hoItems h 1 to "<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, ..."
		Set ComCellSingleLine of hoItems h 1 to False
		Set ComCellCaptionFormat of hoItems h 1 to OLEexHTML
		Set ComCellHAlignment of hoItems h 1 to OLECenterAlignment
		Set ComItemDivider of hoItems h to 1
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerTop
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
511
How can copy and paste the selection to Microsoft Word, Excel or any OLE compliant application, as a text

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComColumnAutoResize to False
	Set ComContinueColumnScroll to False
	Variant rs
	Get Comcreateobject "ADOR.Recordset" to rs
		Send ComOpen "Orders" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to rs
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComItem of hoColumns 2 to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComLevelKey of hoColumn to "1"
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComItem of hoColumns1 3 to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComLevelKey of hoColumn1 to "1"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Variant voColumns2
	Get ComColumns to voColumns2
	Handle hoColumns2
	Get Create (RefClass(cComColumns)) to hoColumns2
	Set pvComObject of hoColumns2 to voColumns2
		Variant voColumn2
		Get ComItem of hoColumns2 4 to voColumn2
		Handle hoColumn2
		Get Create (RefClass(cComColumn)) to hoColumn2
		Set pvComObject of hoColumn2 to voColumn2
			Set ComLevelKey of hoColumn2 to "1"
		Send Destroy to hoColumn2
	Send Destroy to hoColumns2
	Set ComAutoDrag to OLEexAutoDragCopyText
	Set ComSingleSel to False
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComItemByIndex of hoItems 1 to h
		Set ComSelectItem of hoItems h to True
		Get ComItemByIndex of hoItems 3 to h
		Set ComSelectItem of hoItems h to True
		Get ComItemByIndex of hoItems 4 to h
		Set ComSelectItem of hoItems h to True
		Get ComItemByIndex of hoItems 5 to h
		Set ComSelectItem of hoItems h to True
		Set ComLockedItemCount of hoItems OLEBottomAlignment to 1
		Get ComLockedItem of hoItems OLEBottomAlignment 0 to h
		Set ComCellCaption of hoItems h 0 to "<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, Excel, ..."
		Set ComCellSingleLine of hoItems h 0 to False
		Set ComCellCaptionFormat of hoItems h 0 to OLEexHTML
		Set ComCellHAlignment of hoItems h 0 to OLECenterAlignment
		Set ComItemDivider of hoItems h to 0
		Set ComItemDividerLineAlignment of hoItems h to OLEDividerTop
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
510
Is it possible to change the indentation during the drag and drop

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComAutoDrag to OLEexAutoDragPositionAny
	Set ComLinesAtRoot to OLEexNoLinesAtRoot
	Set ComHasLines to OLEexSolidLine
	Set ComHasButtons to OLEexWPlus
	Set ComShowFocusRect to False
	Set ComSelBackMode to OLEexTransparent
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Task" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Group 1" to h
		Set ComItemBold of hoItems h to True
		Set ComItemDivider of hoItems h to 0
		Variant h1
		Get ComInsertItem of hoItems h "Task 1" to h1
		Variant h2
		Get ComInsertItem of hoItems h1 "Task 2" to h2
		Get ComInsertItem of hoItems h1 "Task 3" to h2
		Variant h3
		Get ComInsertItem of hoItems h "Task 3" to h3
		Set ComExpandItem of hoItems h to True
		Set ComExpandItem of hoItems h1 to True
		Get ComAddItem of hoItems "Group 2" to h
		Set ComItemBold of hoItems h to True
		Set ComItemDivider of hoItems h to 0
		Set ComLockedItemCount of hoItems OLEBottomAlignment to 1
		Get ComLockedItem of hoItems OLEBottomAlignment 0 to h
		Set ComCellCaption of hoItems h 0 to "Click a row, and move by dragging <b>up, down</b> to change the row's parent or <b>left,right</b> to increase or decrease the indentation."
		Set ComCellSingleLine of hoItems h 0 to False
		Set ComCellCaptionFormat of hoItems h 0 to OLEexHTML
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
509
Is it possible to allow moving an item to another, but keeping its indentation

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComAutoDrag to OLEexAutoDragPositionKeepIndent
	Set ComLinesAtRoot to OLEexNoLinesAtRoot
	Set ComHasLines to OLEexThinLine
	Set ComShowFocusRect to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Task" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Group 1" to h
		Set ComItemDivider of hoItems h to 0
		Set ComItemBold of hoItems h to True
		Variant h1
		Get ComInsertItem of hoItems h "Task 1" to h1
		Variant h2
		Get ComInsertItem of hoItems h "Task 2" to h2
		Variant h3
		Get ComInsertItem of hoItems h "Task 3" to h3
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Group 2" to h
		Set ComItemBold of hoItems h to True
		Set ComItemDivider of hoItems h to 0
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
508
How can I change the row's position to another, by drag and drop. Is it possible

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComShowFocusRect to False
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "c:\exontrol\images\normal.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComAutoDrag to OLEexAutoDragPosition
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Get ComAdd of hoColumns "Task" to Nothing
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "Task 1" to Nothing
		Get ComAddItem of hoItems "Task 2" to Nothing
		Get ComAddItem of hoItems "Task 3" to Nothing
		Get ComAddItem of hoItems "Task 4" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
507
How do I enable the scrollbar-extension, as thumb to be shown outside of the control's client area

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComScrollBars to OLEexDisableBoth
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible |CI$2 OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Send ComEndUpdate
End_Procedure
506
How can I have a case-insensitive filter (exFilterDoCaseSensitive flag is not set)

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Car" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to OLEexFilter
			Set ComFilter of hoColumn to "MAZDA"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Equipment" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComDisplayFilterPattern of hoColumn1 to False
			Set ComCustomFilter of hoColumn1 to "Air Bag||*Air Bag*|||Air condition||*Air condition*|||ABS||*ABS*|||ESP||*ESP*"
			Set ComFilterType of hoColumn1 to OLEexPattern
			Set ComFilter of hoColumn1 to "AIR BAG"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "Air Bag"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Toyota")) 1 to "Air Bag,Air condition"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Ford")) 1 to "Air condition"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Nissan")) 1 to "Air Bag,ABS,ESP"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "Air Bag, ABS,ESP"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "ABS,ESP"
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
505
How can I have a case-sensitive filter

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMarkSearchColumn to False
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Car" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComFilterType of hoColumn to (OLEexFilterDoCaseSensitive + OLEexFilter)
			Set ComFilter of hoColumn to "Mazda"
		Send Destroy to hoColumn
		Variant voColumn1
		Get ComAdd of hoColumns "Equipment" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComDisplayFilterPattern of hoColumn1 to False
			Set ComCustomFilter of hoColumn1 to "Air Bag||*Air Bag*|||Air condition||*Air condition*|||ABS||*ABS*|||ESP||*ESP*"
			Set ComFilterType of hoColumn1 to (OLEexFilterDoCaseSensitive + OLEexPattern)
			Set ComFilter of hoColumn1 to "Air Bag"
		Send Destroy to hoColumn1
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "Air Bag"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Toyota")) 1 to "Air Bag,Air condition"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Ford")) 1 to "Air condition"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Nissan")) 1 to "Air Bag,ABS,ESP"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "Air Bag, ABS,ESP"
		Set ComCellCaption of hoItems (ComAddItem(hoItems,"Mazda")) 1 to "ABS,ESP"
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
504
I have several columns, but noticed that the filter is using AND between columns, but I need OR clause for filtering. Is it possible

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComLinesAtRoot to OLEexLinesAtRoot
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Item" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComFilter of hoColumn to "Child 1"
			Set ComFilterType of hoColumn to OLEexFilter
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voColumns1
	Get ComColumns to voColumns1
	Handle hoColumns1
	Get Create (RefClass(cComColumns)) to hoColumns1
	Set pvComObject of hoColumns1 to voColumns1
		Variant voColumn1
		Get ComAdd of hoColumns1 "Date" to voColumn1
		Handle hoColumn1
		Get Create (RefClass(cComColumn)) to hoColumn1
		Set pvComObject of hoColumn1 to voColumn1
			Set ComDisplayFilterButton of hoColumn1 to True
			Set ComDisplayFilterPattern of hoColumn1 to False
			Set ComDisplayFilterDate of hoColumn1 to True
			Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexNoItems)
			Set ComFilter of hoColumn1 to "12/28/2010"
			Set ComFilterType of hoColumn1 to OLEexDate
		Send Destroy to hoColumn1
	Send Destroy to hoColumns1
	Set ComFilterCriteria to "%0 or %1"
	Set ComDescription OLEexFilterBarOr to "<font ;18><fgcolor=FF0000>or</fgcolor></font>"
	Set ComDescription OLEexFilterBarAnd to "<font ;18><fgcolor=FF0000>and</fgcolor></font>"
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Variant h
		Get ComAddItem of hoItems "Root 1" to h
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 1")) 1 to "12/27/2010"
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 2")) 1 to "12/28/2010"
		Set ComExpandItem of hoItems h to True
		Get ComAddItem of hoItems "Root 2" to h
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 1")) 1 to "12/29/2010"
		Set ComCellCaption of hoItems (ComInsertItem(hoItems,h,"Child 2")) 1 to "12/30/2010"
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure
503
Is it possible exclude the dates being selected in the drop down filter window

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Date" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortType of hoColumn to OLESortDate
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComDisplayFilterDate of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexNoItems)
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "12/27/2010" to Nothing
		Get ComAddItem of hoItems "12/28/2010" to Nothing
		Get ComAddItem of hoItems "12/29/2010" to Nothing
		Get ComAddItem of hoItems "12/30/2010" to Nothing
		Get ComAddItem of hoItems "12/31/2010" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
502
How can I display a calendar control inside the drop down filter window

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Date" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortType of hoColumn to OLESortDate
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to False
			Set ComDisplayFilterDate of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowFocusItem + OLEexShowCheckBox + OLEexNoItems)
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "12/27/2010" to Nothing
		Get ComAddItem of hoItems "12/28/2010" to Nothing
		Get ComAddItem of hoItems "12/29/2010" to Nothing
		Get ComAddItem of hoItems "12/30/2010" to Nothing
		Get ComAddItem of hoItems "12/31/2010" to Nothing
	Send Destroy to hoItems
	Send ComEndUpdate
End_Procedure
501
Is it possible to include the dates as checkb-boxes in the drop down filter window

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voColumns
	Get ComColumns to voColumns
	Handle hoColumns
	Get Create (RefClass(cComColumns)) to hoColumns
	Set pvComObject of hoColumns to voColumns
		Variant voColumn
		Get ComAdd of hoColumns "Dates" to voColumn
		Handle hoColumn
		Get Create (RefClass(cComColumn)) to hoColumn
		Set pvComObject of hoColumn to voColumn
			Set ComSortType of hoColumn to OLESortDate
			Set ComDisplayFilterButton of hoColumn to True
			Set ComDisplayFilterPattern of hoColumn to True
			Set ComDisplayFilterDate of hoColumn to True
			Set ComFilterList of hoColumn to (OLEexShowFocusItem + OLEexShowCheckBox)
			Set ComFilter of hoColumn to "to 12/27/2010"
			Set ComFilterType of hoColumn to OLEexDate
		Send Destroy to hoColumn
	Send Destroy to hoColumns
	Variant voItems
	Get ComItems to voItems
	Handle hoItems
	Get Create (RefClass(cComItems)) to hoItems
	Set pvComObject of hoItems to voItems
		Get ComAddItem of hoItems "12/27/2010" to Nothing
		Get ComAddItem of hoItems "12/28/2010" to Nothing
		Get ComAddItem of hoItems "12/29/2010" to Nothing
		Get ComAddItem of hoItems "12/30/2010" to Nothing
		Get ComAddItem of hoItems "12/31/2010" to Nothing
	Send Destroy to hoItems
	Send ComApplyFilter
	Send ComEndUpdate
End_Procedure